/*
 * Monkey-Moore - A simple and powerful relative search tool
 * Copyright (C) 2007 Ricardo J. Ricken (Darkl0rd)
 *
 * This program is free software; you can redistribute it and/or modify it
 * under the terms of the GNU General Public License as published by the Free
 * Software Foundation; either version 2 of the License, or (at your option)
 * any later version.
 *
 * This program is distributed in the hope that it will be useful, but WITHOUT
 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
 * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License along
 * with this program; if not, write to the Free Software Foundation, Inc.,
 * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
 */

#ifndef CONSTANTS_HPP
#define CONSTANTS_HPP

#define MM_VERSION wxT("0.4")
#define MM_BUILD   wxT("2009.02.06")

#define MM_CONFIG_FILE wxT("config.xml")
#define MM_PROJECT_URL wxT("http://www.romhacking.trd.br/index.php?topic=1878.0")

// common dialog messages
#define MM_MSG_SAVETBL _("Choose where you want to save the table...")
#define MM_MSG_OPENFL  _("Choose the file you want to search on...")

// warnings
#define MM_WARNING_NOFILE            _("You must choose a file to perform the search on.")
#define MM_WARNING_FILENOTFOUND      _("Unable to open the specified file.\nCheck if it exists and if it's not being\nused by other applications.")
#define MM_WARNING_FILECANTACCESS    _("Unable to open the specified file for reading.\nCheck if it's not being used by other applications.")
#define MM_WARNING_KWORDSIZE         _("You must input a keyword with 3 or more characters.")
#define MM_WARNING_KWORDCAPLETTERS   _("The keyword must have at least\n3 upper or lower characters.")
#define MM_WARNING_KWORDLETTERS      _("The keyword must have at least\n3 letters, excluding wildcards.")
#define MM_WARNING_KWORDINVALIDCHARS _("Only letters and wildcards are supported.\nYou may not use any other characters.")
#define MM_WARNING_KWORDNONWILDCARD  _("You must input 3 or more non-wildcard characters.")
#define MM_WARNING_KWORDCPMISMATCH   _("You must input a keyword containg ONLY characters found in your defined charset.")
#define MM_WARNING_VSRINVALIDVAL     _("Invalid value found. You should input only\nnon-negative decimal numbers.")
#define MM_WARNING_CHARPATWILDCARD   _("You cannot use the defined wildcard character in your custom charset.")
#define MM_WARNING_CHARPATDUPLICATED _("The defined character set may not contain duplicated characters.")
#define MM_WARNING_NOWC              _("The wildcard option is enabled.\nYou must input the desired wildcard in the field.")
#define MM_WARNING_MANYWC            _("Only one character should be used as wildcard.\nRemove extra characters.")
#define MM_WARNING_NORESULTSELECTED  _("You must choose an item from the results\nlist in order to create a Thingy table.")
#define MM_WARNING_TABLENORESULTS    _("You cannot create a table while there are no results.")
#define MM_WARNING_THREADERROR       _("Unable to start a worker thread to perform the search.")

// identifiers
enum
{
   // main frame
   MonkeyMoore_Browse = wxID_HIGHEST,
   MonkeyMoore_FName,
   MonkeyMoore_RelativeSearch,
   MonkeyMoore_ValueScanSearch,
   MonkeyMoore_KWord,
   MonkeyMoore_Search,
   MonkeyMoore_UseWC,
   MonkeyMoore_Wildcard,
   MonkeyMoore_Advanced,
   MonkeyMoore_EnableCP,
   MonkeyMoore_CharPattern,
   MonkeyMoore_CharsetList,
   MonkeyMoore_AllResults,
   MonkeyMoore_Results,
   MonkeyMoore_CreateTbl,
   MonkeyMoore_Clear,
   MonkeyMoore_Options,
   MonkeyMoore_About,
   MonkeyMoore_Counter,
   MonkeyMoore_Progress,
   MonkeyMoore_ElapsedTime,
   MonkeyMoore_Cancel,

   // options panel
   MonkeyOptions_AlwaysCenter,
   MonkeyOptions_RememberSize,
   MonkeyOptions_RememberPos,
   MonkeyOptions_RememberUI,
   MonkeyOptions_PreviewWidth,
   MonkeyOptions_OffsetHex,
   MonkeyOptions_OffsetDec,
   MonkeyOptions_SearchBuffer,
   
   // notifications
   MonkeyThread_JobFinished,
   MonkeyThread_JobAborted,

   // common charsets menu
   MonkeyMoore_CharsetBase
};

// image indexes
enum
{
   MonkeyBitmap_advanced,
   MonkeyBitmap_advanced_hide,
   MonkeyBitmap_done,
   MonkeyBitmap_cancel,
   MonkeyBitmap_openfile,
   MonkeyBitmap_openfile_grayed,
   MonkeyBitmap_search,
   MonkeyBitmap_search_grayed,
   MonkeyBitmap_options,
   MonkeyBitmap_options_grayed,
   MonkeyBitmap_about,
   MonkeyBitmap_charset,
   MonkeyBitmap_charset_grayed
};

#endif //~CONSTANTS_HPP
